home *** CD-ROM | disk | FTP | other *** search
- MODULE Test;
- FROM InOut IMPORT WriteLn, WriteString, WriteInt,
- OpenOutput, CloseOutput;
- FROM RealInOut IMPORT ReadLongReal, WriteLongReal, WriteLongRealFixed,
- Done, WriteReal, WriteRealFixed, WriteLongRealHex,
- Rec;
- FROM LongMathLib0 IMPORT Entier, LongReal, Ln, Exp, Sqrt, Sin, Cos, Tan,
- Arctan, Arctan2, Pi, E;
- FROM MathLib0 IMPORT entier, real, ln, exp, sqrt, sin, cos, tan,
- arctan, arctan2, pi, e;
- FROM System IMPORT FLOATd;
- VAR R,S : LONGREAL;
- r,s : REAL;
-
- BEGIN
- OpenOutput('PRN:');
-
- WriteString('pi = ');
- WriteLongRealFixed(Pi,21,15);
- WriteRealFixed(pi,18,7);
- WriteLn;WriteLn;
-
- WriteString('sqrt(1/pi) = ');
- WriteLongReal(Sqrt(Rec(Pi)),26);
- WriteReal(sqrt(1.0/pi),17);
- WriteLn;
- WriteString('sqrt(2/pi) = ');
- WriteLongReal(Sqrt(FLOATd(2)*Rec(Pi)),26);
- WriteReal(sqrt(2.0/pi),17);
- WriteLn;
- WriteString('sqrt(pi) = ');
- WriteLongReal(Sqrt(Pi),26);
- WriteReal(sqrt(pi),17);
- WriteLn;
- WriteString('sqrt(2) = ');
- WriteLongReal(Sqrt(FLOATd(2)),26);
- WriteReal(sqrt(2.0),17);
- WriteLn;
- WriteString('sqrt(10) = ');
- WriteLongReal(Sqrt(FLOATd(10)),26);
- WriteReal(sqrt(10.0),17);
- WriteLn;WriteLn;
-
- WriteString('e = ');
- WriteLongRealFixed(E,21,15);
- WriteRealFixed(e,18,7);
- WriteLn; WriteLn;
-
- WriteString('exp(-1) = ');
- WriteLongReal(Exp(-FLOATd(1)),26);
- WriteReal(exp(-1.0),17);
- WriteLn;
- WriteString('exp(-1/4) = ');
- WriteLongReal(Exp(-Rec(FLOATd(4))),26);
- WriteReal(exp(-1.0/4.0),17);
- WriteLn;
- WriteString('exp(1/4) = ');
- WriteLongReal(Exp(Rec(FLOATd(4))),26);
- WriteReal(exp(1.0/4.0),17);
- WriteLn;
- WriteString('exp(1) = ');
- WriteLongReal(Exp(FLOATd(1)),26);
- WriteReal(exp(1.0),17);
- WriteLn;WriteLn;
-
- WriteString('ln(sqrt(2)) = ');
- WriteLongReal(Ln(Sqrt(FLOATd(2))),26);
- WriteReal(ln(sqrt(2.0)),17);
- WriteLn;
- WriteString('ln(2) = ');
- WriteLongReal(Ln(FLOATd(2)),26);
- WriteReal(ln(2.0),17);
- WriteLn;
- WriteString('ln(4) = ');
- WriteLongReal(Ln(FLOATd(4)),26);
- WriteReal(ln(4.0),17);
- WriteLn;
- WriteString('ln(10) = ');
- WriteLongReal(Ln(FLOATd(10)),26);
- WriteReal(ln(10.0),17);
- WriteLn;WriteLn;
-
- WriteString('sin(pi/24) = ');
- WriteLongReal(Sin(Pi*Rec(FLOATd(24))),26);
- WriteReal(sin(pi/24.0),17);
- WriteLn;
- WriteString('sin(pi/16) = ');
- WriteLongReal(Sin(Pi*Rec(FLOATd(16))),26);
- WriteReal(sin(pi/16.0),17);
- WriteLn;
- WriteString('sin(1/4) = ');
- WriteLongReal(Sin(FLOATd(1)*Rec(FLOATd(4))),26);
- WriteReal(sin(0.25),17);
- WriteLn;
- WriteString('sin(pi/12) = ');
- WriteLongReal(Sin(Pi*Rec(FLOATd(12))),26);
- WriteReal(sin(pi/12.0),17);
- WriteLn;
- WriteString('sin(1/2) = ');
- WriteLongReal(Sin(FLOATd(1)*Rec(FLOATd(2))),26);
- WriteReal(sin(0.5),17);
- WriteLn;
- WriteString('sin(pi/6) = ');
- WriteLongReal(Sin(Pi*Rec(FLOATd(6))),26);
- WriteReal(sin(pi/6.0),17);
- WriteLn;
- WriteString('sin(pi/4) = ');
- WriteLongReal(Sin(Pi*Rec(FLOATd(4))),26);
- WriteReal(sin(pi/4.0),17);
- WriteLn;
- WriteString('sin(1) = ');
- WriteLongReal(Sin(FLOATd(1)),26);
- WriteReal(sin(1.0),17);
- WriteLn;
- WriteString('sin(pi/3) = ');
- WriteLongReal(Sin(Pi*Rec(FLOATd(3))),26);
- WriteReal(sin(pi/3.0),17);
- WriteLn;
- WriteString('sin(3*pi/8) = ');
- WriteLongReal(Sin(FLOATd(3)*Pi*Rec(FLOATd(8))),26);
- WriteReal(sin(3.0*pi/8.0),17);
- WriteLn;
- WriteString('sin(5*pi/12) = ');
- WriteLongReal(Sin(FLOATd(5)*Pi*Rec(FLOATd(12))),26);
- WriteReal(sin(5.0*pi/12.0),17);
- WriteLn;WriteLn;
-
- WriteString('tan(pi/32) = ');
- WriteLongReal(Tan(Pi*Rec(FLOATd(32))),26);
- WriteReal(tan(pi/32.0),17);
- WriteLn;
- WriteString('tan(pi/16) = ');
- WriteLongReal(Tan(Pi*Rec(FLOATd(16))),26);
- WriteReal(tan(pi/16.0),17);
- WriteLn;
- WriteString('tan(1/4) = ');
- WriteLongReal(Tan(Rec(FLOATd(4))),26);
- WriteReal(tan(0.25),17);
- WriteLn;
- WriteString('tan(pi/12) = ');
- WriteLongReal(Tan(Pi*Rec(FLOATd(12))),26);
- WriteReal(tan(pi/12.0),17);
- WriteLn;
- WriteString('tan(3*pi/32) = ');
- WriteLongReal(Tan(FLOATd(3)*Pi*Rec(FLOATd(32))),26);
- WriteReal(tan(3.0*pi/32.0),17);
- WriteLn;
- WriteString('tan(pi/8) = ');
- WriteLongReal(Tan(Pi*Rec(FLOATd(8))),26);
- WriteReal(tan(pi/8.0),17);
- WriteLn;
- WriteString('tan(5*pi/32) = ');
- WriteLongReal(Tan(FLOATd(5)*Pi*Rec(FLOATd(32))),26);
- WriteReal(tan(5.0*pi/32.0),17);
- WriteLn;
- WriteString('tan(1/2) = ');
- WriteLongReal(Tan(Rec(FLOATd(2))),26);
- WriteReal(tan(0.5),17);
- WriteLn;
- WriteString('tan(pi/6) = ');
- WriteLongReal(Tan(Pi*Rec(FLOATd(6))),26);
- WriteReal(tan(pi/6.0),17);
- WriteLn;
- WriteString('tan(3*pi/16) = ');
- WriteLongReal(Tan(FLOATd(3)*Pi*Rec(FLOATd(16))),26);
- WriteReal(tan(3.0*pi/16.0),17);
- WriteLn;
- WriteString('tan(7*pi/32) = ');
- WriteLongReal(Tan(FLOATd(7)*Pi*Rec(FLOATd(32))),26);
- WriteReal(tan(7.0*pi/32.0),17);
- WriteLn;
- WriteString('tan(pi/4) = ');
- WriteLongReal(Tan(Pi*Rec(FLOATd(4))),26);
- WriteReal(tan(pi/4.0),17);
- WriteLn;
- WriteString('tan(9*pi/32) = ');
- WriteLongReal(Tan(FLOATd(9)*Pi*Rec(FLOATd(32))),26);
- WriteReal(tan(9.0*pi/32.0),17);
- WriteLn;
- WriteString('tan(5*pi/16) = ');
- WriteLongReal(Tan(FLOATd(5)*Pi*Rec(FLOATd(16))),26);
- WriteReal(tan(5.0*pi/16.0),17);
- WriteLn;
- WriteString('tan(1) = ');
- WriteLongReal(Tan(FLOATd(1)),26);
- WriteReal(tan(1.0),17);
- WriteLn;
- WriteString('tan(pi/3) = ');
- WriteLongReal(Tan(Pi*Rec(FLOATd(3))),26);
- WriteReal(tan(pi/3.0),17);
- WriteLn;
- WriteString('tan(11*pi/32) = ');
- WriteLongReal(Tan(FLOATd(11)*Pi*Rec(FLOATd(32))),26);
- WriteReal(tan(11.0*pi/32.0),17);
- WriteLn;
- WriteString('tan(3*pi/8) = ');
- WriteLongReal(Tan(FLOATd(3)*Pi*Rec(FLOATd(8))),26);
- WriteReal(tan(3.0*pi/8.0),17);
- WriteLn;
- WriteString('tan(13*pi/32) = ');
- WriteLongReal(Tan(FLOATd(13)*Pi*Rec(FLOATd(32))),26);
- WriteReal(tan(13.0*pi/32.0),17);
- WriteLn;
- WriteString('tan(5*pi/12) = ');
- WriteLongReal(Tan(FLOATd(5)*Pi*Rec(FLOATd(12))),26);
- WriteReal(tan(5.0*pi/12.0),17);
- WriteLn;
- WriteString('tan(7*pi/16) = ');
- WriteLongReal(Tan(FLOATd(7)*Pi*Rec(FLOATd(16))),26);
- WriteReal(tan(7.0*pi/16.0),17);
- WriteLn;
- WriteString('tan(15*pi/32) = ');
- WriteLongReal(Tan(FLOATd(15)*Pi*Rec(FLOATd(32))),26);
- WriteReal(tan(15.0*pi/32.0),17);
- WriteLn;WriteLn;
-
- WriteString('(arctan(tan(r))-r)/r:');
- WriteLn;
- WriteString('r = (pi/32) :');
- R:=Pi*Rec(FLOATd(32));
- r:=pi/32.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (pi/16) :');
- R:=Pi*Rec(FLOATd(16));
- r:=pi/16.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (1/4) :');
- R:=Rec(FLOATd(4));
- r:=0.25;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (pi/12) :');
- R:=Pi*Rec(FLOATd(12));
- r:=pi/12.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (3*pi/32) :');
- R:=FLOATd(3)*Pi*Rec(FLOATd(32));
- r:=3.0*pi/32.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (pi/8) :');
- R:=Pi*Rec(FLOATd(8));
- r:=pi/8.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (5*pi/32) :');
- R:=FLOATd(5)*Pi*Rec(FLOATd(32));
- r:=5.0*pi/32.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (1/2) :');
- R:=Rec(FLOATd(2));
- r:=0.5;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (pi/6) :');
- R:=Pi*Rec(FLOATd(6));
- r:=pi/6.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (3*pi/16) :');
- R:=FLOATd(3)*Pi*Rec(FLOATd(16));
- r:=3.0*pi/16.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (7*pi/32) :');
- R:=FLOATd(7)*Pi*Rec(FLOATd(32));
- r:=7.0*pi/32.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (pi/4) :');
- R:=Pi*Rec(FLOATd(4));
- r:=pi/4.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (9*pi/32) :');
- R:=FLOATd(9)*Pi*Rec(FLOATd(32));
- r:=9.0*pi/32.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (5*pi/16) :');
- R:=FLOATd(5)*Pi*Rec(FLOATd(16));
- r:=5.0*pi/16.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (1) :');
- R:=FLOATd(1);
- r:=1.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (pi/3) :');
- R:=Pi*Rec(FLOATd(3));
- r:=pi/3.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (11*pi/32) :');
- R:=FLOATd(11)*Pi*Rec(FLOATd(32));
- r:=11.0*pi/32.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (3*pi/8) :');
- R:=FLOATd(3)*Pi*Rec(FLOATd(8));
- r:=3.0*pi/8.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (13*pi/32) :');
- R:=FLOATd(13)*Pi*Rec(FLOATd(32));
- r:=13.0*pi/32.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (5*pi/12) :');
- R:=FLOATd(5)*Pi*Rec(FLOATd(12));
- r:=5.0*pi/12.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (7*pi/16) :');
- R:=FLOATd(7)*Pi*Rec(FLOATd(16));
- r:=7.0*pi/16.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;
- WriteString('r = (15*pi/32) :');
- R:=FLOATd(15)*Pi*Rec(FLOATd(32));
- r:=15.0*pi/32.0;
- WriteLongReal((Arctan(Tan(R))-R)*Rec(r),26);
- WriteReal((arctan(tan(r))-r)/r,17);
- WriteLn;WriteLn;
-
- CloseOutput
-
- END Test.
-